For reasons associated with communications protocol and convenience of use, the files in an IC card memory are classified in directories, themselves organized in a tree structure having various levels. A given file thus corresponds to a particular access path in the tree structure.
At present, the tree structure is implemented physically in the card memory: the directories in which the various files are stored are physically created in the memory and they are physically interleaved amongst one another in application of a tree structure created by the user.
That method of storing files with a physical tree structure suffers from two main drawbacks. Firstly it is expensive in memory space, since the directories of the tree structure exist physically within the memory and the header information they contain (identifiers, sizes, pointers, etc. . . . ) occupies memory space that cannot be used for storing files. Secondly, the operations of adding, deleting, extending, or reducing a file require physical modification to the tree structure in the memory. Such modification assumes that the chaining pointers of the tree structure are updated dynamically. This updating gives rise not only to a loss of time, but also to insecurity, in the event of the card being pulled out while updating is taking place, in which case there is a risk that the operating system will no longer be able to reestablish a coherent tree structure in the card memory.